home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / docs / apps / database / ingres04.lzh / source / conf / Makefile < prev    next >
Encoding:
Makefile  |  1993-01-20  |  5.2 KB  |  212 lines

  1. ###################################################################
  2. ###################################################################
  3. ###                                ###
  4. ###                                ###
  5. ###    *****    *   *    *****    ****     *****     ****    ###
  6. ###      *      **  *    *        *   *    *        *        ###
  7. ###      *      * * *    * ***    ****     ***       ***     ###
  8. ###      *      *  **    *   *    *  *     *            *    ###
  9. ###    *****    *   *    *****    *   *    *****    ****     ###
  10. ###                                ###
  11. ###                                ###
  12. ###          A relational database management system        ###
  13. ###                                ###
  14. ###                RELEASE 8                ###
  15. ###                                ###
  16. ###################################################################
  17. ###################################################################
  18. #
  19. #    For information contact:
  20. #        Mike Stonebraker
  21. #        Dept. of Electrical Engineering &
  22. #          Computer Science
  23. #        University of California
  24. #        Berkeley, California  94720
  25. #
  26. #    For information on Linux/386BSD port contact:
  27. #        Zeyd M. Ben-Halim
  28. #        zmbenhalim@netcom.com
  29.  
  30. #
  31. #    @(#)Makefile    8.4    12/24/86
  32. #
  33.  
  34. #
  35. #  This makefile compiles most of the modules for the bulk of
  36. #  the INGRES system.  The modules affected are those used by
  37. #  the "ingres" command itself.  Stand-alone utilities such as
  38. #  "printr" and "restore" are in the 'support' directory.
  39. #
  40.  
  41. #
  42. #    Major recompilation will take place from this directory.
  43. #    There are several interesting entry points:
  44. #        allclean    cleans all cruft from all
  45. #                directories.
  46. #        allinstall    installs binaries in the INGRES
  47. #                bin directory.
  48. #            INSTALL=actual entry point called.
  49. #
  50. #    Examples of usage:
  51. #        To recompile entire system from sources:
  52. #            make allclean allinstall
  53. #        To install INGRES for general users:
  54. #            make allinstall 
  55. #            run .../INSTALL.ME
  56. #
  57.  
  58. include ../Config
  59.  
  60. #
  61. #  General system paths
  62. #
  63.  
  64. # the ingres subtree
  65. INGRES=    ../..
  66. # the location of the system header files
  67. H=    ../h
  68. # the residence of the system (internal) libraries
  69. LIB=    $(INGRES)/lib
  70. # the residence of the system (internal) binaries
  71. # this entry must be reflected in the process table
  72. BIN=    $(INGRES)/bin
  73. # the location of user binaries
  74. SYSBIN=    /usr/local
  75. # the location of user libraries (libq.a)
  76. SYSLIB=    /usr/local/lib
  77.  
  78. ALL=    monitor univingres sysmonitor sysmodfunc sysdump
  79.  
  80. SRCS=    monitor.c univingres.c sysdump.c version.c sysmonitor.c sysmodfunc.c
  81.  
  82. #
  83. #  Libraries
  84. #
  85. #    Libraries should be loaded in the order listed below.
  86. #
  87. CTLMOD=    $(LIB)/ctlmod
  88. IUTIL=    $(LIB)/iutil
  89. GUTIL=    $(LIB)/gutil
  90. MATH=    -lm
  91.  
  92. ALLLIB=    $(CTLMOD) $(IUTIL) $(GUTIL)
  93.  
  94. #
  95. #  Binaries
  96. #
  97. MONITOR=$(LIB)/monitor
  98. SYSMONITOR=$(LIB)/sysmonlib
  99. PARSER=    $(LIB)/parser
  100. QRYMOD=    $(LIB)/qrymod
  101. DECOMP=    $(LIB)/decomp
  102. OVQP=    $(LIB)/ovqp
  103. DBULIB=    $(LIB)/dbulib
  104.  
  105. #
  106. #  Assorted commands & other garbage
  107. #
  108. CFLAGS=    $(CONFIG) -I$H -O
  109. LDFLAGS= 
  110. CHMOD=    install -m
  111. BINMODE=751
  112. SUMODE=    4751
  113. CP=    cp
  114. HEADER=    Configuration Tables
  115. MAKE=    make 
  116. MFLAGS=    -k
  117. INSTALL=install 
  118.  
  119. #
  120. #  And the processes....
  121. #
  122. #    Proper loading order is:
  123. #        conf table
  124. #        library(s) for modules
  125. #        ctlmod library
  126. #        iutil library
  127. #        gutil library
  128. #
  129. #  Sysmodfunc
  130.  
  131. sysmodfunc: version.o sysmodfunc.o $(DBULIB) $(CTLMOD) $(ALLLIB)
  132.     $(CC) $(LDFLAGS) version.o $@.o $(DBULIB) $(OTHERS) $(ALLLIB)  -o $@
  133.     $(INSTALL) -m $(SUMODE) $@ $(BIN)
  134.     rm $@
  135.  
  136. #  Sysdump
  137.  
  138. sysdump: version.o sysdump.o $(CTLMOD) $(ALLLIB)
  139.     $(CC) $(LDFLAGS) version.o $@.o $(OTHERS) $(ALLLIB)  -o $@
  140.     $(INSTALL) -m $(SUMODE) $@ $(BIN)
  141.     rm $@
  142.  
  143. #  Monitor
  144.  
  145. monitor: version.o monitor.o $(MONITOR) $(CTLMOD) $(IUTIL) $(GUTIL)
  146.     $(CC) $(LDFLAGS) version.o $@.o $(OTHERS) $(MONITOR) $(CTLMOD) $(IUTIL) $(GUTIL) -o $@
  147.     $(INSTALL) -m $(BINMODE) $@ $(BIN)
  148.     rm $@
  149.  
  150. #  SysMonitor 
  151.  
  152. sysmonitor: version.o sysmonitor.o $(SYSMONITOR) $(DBULIB) $(IUTIL) $(GUTIL)
  153.     $(CC) $(LDFLAGS) version.o $@.o $(OTHERS) $(SYSMONITOR) $(CTLMOD) $(IUTIL) $(GUTIL) -o $@
  154.     $(INSTALL) -m $(BINMODE) $@ $(BIN)
  155.     rm $@
  156.  
  157. #  Full System
  158.  
  159. ALLLIBS=$(PARSER) $(QRYMOD) $(DECOMP) $(OVQP) $(DBULIB) $(ALLLIB)
  160.  
  161. univingres: version.o univingres.o $(ALLLIBS)
  162.     $(CC) $(LDFLAGS) version.o $@.o $(OTHERS) $(ALLLIBS) $(MATH)  -o $@
  163.     $(INSTALL) -m $(SUMODE) $@ $(BIN)
  164.     rm $@
  165.  
  166. allinstall: version.o all1 all 
  167.  
  168. all: $(ALL)
  169.  
  170. all1:
  171.     cd ../h; $(MAKE) $(MFLAGS) $(INSTALL)
  172.     cd ../gutil; $(MAKE) $(MFLAGS) $(INSTALL)
  173.     cd ../iutil; $(MAKE) $(MFLAGS) $(INSTALL)
  174.     cd ../ctlmod; $(MAKE) $(MFLAGS) $(INSTALL)
  175.     cd ../dbu; $(MAKE) $(MFLAGS) $(INSTALL)
  176.     cd ../decomp; $(MAKE) $(MFLAGS) $(INSTALL)
  177.     cd ../equel; $(MAKE) $(MFLAGS) $(INSTALL)
  178.     cd ../libq; $(MAKE) $(MFLAGS) $(INSTALL)
  179.     cd ../monitor; $(MAKE) $(MFLAGS) $(INSTALL)
  180.     cd ../ovqp; $(MAKE) $(MFLAGS) $(INSTALL)
  181.     cd ../parser; $(MAKE) $(MFLAGS) $(INSTALL)
  182.     cd ../qrymod; $(MAKE) $(MFLAGS) $(INSTALL)
  183.     cd ../support; $(MAKE) $(MFLAGS) $(INSTALL)
  184.  
  185. #################################################################
  186. #
  187. #    Miscellaneous entries
  188. #
  189.  
  190. new:
  191.     rm -f $(ALL)
  192.  
  193. clean: new
  194.     rm -f *.o
  195.     rm -f a.out core
  196.  
  197. allclean: clean
  198.     cd ../h; $(MAKE) $(MFLAGS) clean
  199.     cd ../gutil; $(MAKE) $(MFLAGS) clean
  200.     cd ../iutil; $(MAKE) $(MFLAGS) clean
  201.     cd ../ctlmod; $(MAKE) $(MFLAGS) clean
  202.     cd ../dbu; $(MAKE) $(MFLAGS) clean
  203.     cd ../decomp; $(MAKE) $(MFLAGS) clean
  204.     cd ../equel; $(MAKE) $(MFLAGS) clean
  205.     cd ../libq; $(MAKE) $(MFLAGS) clean
  206.     cd ../monitor; $(MAKE) $(MFLAGS) clean
  207.     cd ../ovqp; $(MAKE) $(MFLAGS) clean
  208.     cd ../parser; $(MAKE) $(MFLAGS) clean
  209.     cd ../qrymod; $(MAKE) $(MFLAGS) clean
  210.     cd ../support; $(MAKE) $(MFLAGS) clean
  211.  
  212.